home *** CD-ROM | disk | FTP | other *** search
-
- DESCRIPTION:
-
- SystemPatch replaces some functions of the operating system with optimized
- ones, increasing the system efficiency in multitasking environment.
-
- REQUIREMENTS:
-
- OS3.0+ (should work too with OS2.x but i'm not sure).
- CPU 68020 or 68030 (also works with higher processor but it's optimized
- for these ones).
- Some FAST RAM!!!
-
- WHAT DOES IT DO:
-
- It patches these functions:
-
- in graphics.library
-
- DisownBlitter()
- InitRastPort()
- SetFont()
- ClearEOL()
- ClearScreen()
- TextLength()
- WaitTOF()
- WaitBlit()
- QBlit()
- QBSBlit()
- AreaMove()
- EraseRect()
-
- in exec.library
-
- Forbid()
- SetSignal()
- Signal()
- Wait()
- Schedule()
- Reschedule()
- Exception()
- ExitIntr()
- Dispatch()
- Cause()
- PutMsg()
- ReplyMsg()
- Enqueue()
- WaitPort()
- RemPort()
- Insert()
- AddHead()
- Remove()
- RemHead()
- RemTail()
- SetExcept()
- Switch()
- InitSemaphore()
- AddSemaphore()
- AddPort()
- RemResource()
- RemSEmaphore()
- ReleaseSemaphore()
-
- in layers.library
-
- DoHookClipRects()
-
- in utility.library
-
- SMult32()
- UMult32()
- SMult64()
- UMult64()
- SDivMod32()
- UDivMod32()
-
- In SDivMod32() and UDivMod32(), i've introduced a check of operand that original
- system functions do not make to avoid crashes due to divide by zero errors.
-
- It replaces Auto Vector Interrupts routines with faster ones.
-
- The patches do not interfere with other programs like:
- FBlit, FText, SysPatch (best if you run SystemPatch after it), CMQ (and
- other CopyMem() patches), MCP, QBC, PatchWPA8, NewWPA8, BlazeWCP,
- PoolMem, Executive.
- NOTE: SystemPatch is optimized for 020 and 030 processors but you can
- also use it if you have higher processor, these routines are even faster
- than the originals.
-
- INSTALLATION:
-
- From shell or from your user-startup just type the program name.
- If you have not fast memory or not enough memory or inadeguate
- processor it exits silently without installing anything.
- If you have Executive is best to launch SystemPatch before it.
-
- DISTRIBUTION:
-
- SystemPatch is FREEWARE. Use it at your own risk.
-
- AUTHOR:
-
- If this program does not crash on your system or you think it is useful let
- me know about it.
- Write me! Congratulations and insults are welcome.
-
- E-mail: ziosante@libero.it
-
- BUGS:
-
- I hope no one!
- Tested on :
- A1200 OS3.0 68020 8 Meg Fast Ram
- A1200 OS3.0 Blizzard IV 16 Meg Fast Ram
-
- HISTORY:
- - 1.7b New UDivMod32() and SDviMod32() patches: these make a control on
- operands before taking division to avoid divide by zero errors.
- This fixes problems with programs that call that functions with
- wrong arguments(causing divide by zero errors).
- - 1.7 Removed Interrupts Vector patches because of a bug with mfm decoding of
- trackdisk.
- - 1.6f General speedup to interrupt vectors and auto vector interrupts.
- - 1.6e Corrected a bug in SOFTINT. Little speedup to BLIT.
- - 1.6d Reworked code for a better use of caches.
- - 1.6c Little speedup to InitRastPort().
- - 1.6 Added AreaMove(), EraseRect(), ReleaseSemaphore().
- Added Interrupt Vectors patches (see patches list in this doc).
- - 1.5g Added InitSemaphore(), AddSemaphore(), AddPort(), RemResource(),
- RemSemaphore().
- Little speedup to Switch() and DoHookClipRects().
- - 1.5f Little speedup to DoHookClipRects(). Changed the installation code.
- - 1.5e Nothing changed except the source. Now uses CopyMemQuick() to install
- the patches.
- - 1.5d Added DoHookClipRects() patch.
- - 1.5c Readded Switch(), now works perfectly. If Executive is launched this
- patch is not installed.
- - 1.5b Speeded up Auto Vector Interrupts.
- - 1.5a New Wait(). Some misc speedups. Aestetical changes to source.
- - 1.5 Restored old WaitBlit() patch (version 1.2 of SystemPatch) for
- safety reasons. Added utility.library patches.
- Reworked source. New Wait().
- - 1.4 Removed a bug in QBlit() patch. Added QBSBlit() patch.
- - 1.3 Changed WaitBlit() patch (it's a little faster to return if
- blitter is not busy). Added a QBlit() patch.
- - 1.2 First public release. Reworked patch installation code to do it more
- compatible with Executive (this is done by removing Switch() patch).
- - 1.1 Fixed a bug in Schedule() that made to crash my system sometimes.
- - 1.0 First internal release.
-